//
//  U76HONet.h
//  u76ho
//
//  Created by m-air-01 on 16/1/15.
//  Copyright © 2016年 LV. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "HomePageModel.h"
#import "CommendCompanyModel.h"
#import "ContactPeopleModel.h"
#import "PositionModel.h"
#import "ContactPeopleDetailModel.h"
#import "CompanySelfCheckModel.h"
#import "ZPDetailModel.h"
#import "RecommenLableModel.h"
#import "ComplexPositionModel.h"
#import "AllcommendModel.h"
#import "PastExperienceModel.h"
#import "MyCollectionListModel.h"
#import "ReadBaseInfoModel.h"
#import "ResumeAddModel.h"
#import "RusumeHomePageOneModel.h"
#import "EditResumeModel.h"
#import "FirendImpretionModel.h"
#import "DynaModel.h"
#import "PictureModel.h"
#import "PictureContentModel.h"
#import "SCompanyModel.h"
#import "SPositionModel.h"
#import "CompanyDetailModel.h"
#import "ZNletterModel.h"
#import "PositionDeliverListModel.h"
#import "ZNLetterDetailModel.h"
#import "PositionDeliverDetailModel.h"
#import "ResumeSelectedModel.h"
#import "ActivityModel.h"
#import "AnnouncementModel.h"
#import "LoginModel.h"

#import "CompanyZhaoPinModel.h"

//////////////////////////////////////////////////////////////////
typedef void(^DictionaryBlock) (NSDictionary * dic);//返回字典
typedef void(^ArrayBlock) (NSArray * arr);//返回数组
//////////////////////////////////////////////////////////////////
typedef void(^HomePageModelBlock) (HomePageModel * model);//返回首页model
typedef void(^ContactPeopleDetaileModelBlock) (ContactPeopleDetailModel * model);//联系人详情的model
typedef void(^CompanySelfCheckModelBlock) (CompanySelfCheckModel * model);//企业自检的model
typedef void(^ZPDetailModelBlock) (ZPDetailModel * model);//招聘信息详情的model
typedef void(^RecommenLableModelBlock) (RecommenLableModel * model);//推荐标签的model
typedef void(^ComplexPositionModelBlock) (ComplexPositionModel * model);//1级和2级数据混合的职位选择model
typedef void(^AllcommendModelBlock) (AllcommendModel * model);//所有评论的model
typedef void(^ReadBaseInfoModelBlock) (ReadBaseInfoModel * model);//用户基本信息的model
typedef void(^EditResumeModelBlock) (EditResumeModel * model);//编辑简历时获取的数据model
typedef void(^DynaModelBlock) (DynaModel * model);//所有动态的model
typedef void(^CompanyDetailModelBlock) (CompanyDetailModel * model);//公司详情的model
typedef void(^ZNLetterDetailModelBlock) (ZNLetterDetailModel * model);//站内信详情的model
typedef void(^PositionDeliverDetailModelBlock) (PositionDeliverDetailModel * model);//投递简历结果详情model
typedef void(^ActivityModelBlock) (ActivityModel * model);//活动公告的model
typedef void(^LoginModelBlock) (LoginModel * model);//登录的model

@interface U76HONet : NSObject

/**
 *  @brief  1.0 短信发送接口
 *
 *  @param action 类型：send;mobile 手机号
 */
+(void)sendMessageWithAction:(NSString *)action mobile:(NSString *)mobile andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.1 短信接口
 *
 *  @param action 类型：msg;mobile 手机号;code 验证码
 */
+(void)messageCorrectWithaction:(NSString *)msg mobile:(NSString *)mobile code:(NSString *)code andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.2 上传图片接口
 *
 *  @param action 类型：uppics;pictures[] 标签名 <input type="file" name="pictures[]" multiple  />;picname 图片组名：用 “|”隔开，如  123.jpg|456.png
 */

+(void)upPictureWithaction:(NSString *)action pictures:(NSArray *)picArr picname:(NSString *)picname andDataBlock:(DictionaryBlock)block;
/**
 *  @brief  1.3 APP首页接口
 *
 *  @param
 */
+(void)getHomepageDataBlock:(HomePageModelBlock)block;

/**
 *  @brief  1.4 推荐活动详情页接口
 *
 *  @param Action 类型：article;Infoid 信息ID
 */
+(void)commendActivityWithAction:(NSString *)action Infoid:(NSString *)infoid andDataBlock:(ActivityModelBlock)block;

/**
 *  @brief  1.5 推荐企业列表接口
 *
 *  @param Action 类型：tjlist;Type 左边：1  右边：2
 */
+(void)commendCompanyListWithAction:(NSString *)action Type:(NSString *)type andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.6 注册接口
 *
 *  @param action 类型：reg;client 客户端ID;username 用户名;userpwd 密码;Mobile 手机
*/
+(void)registerUserWithaction:(NSString *)action client:(NSString *)client username:(NSString *)username userpwd:(NSString *)userpwd Mobile:(NSString *)mobile sex:(NSString *)sex andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.6.1 职场轨迹接口
 *
 *  @param action 类型：reg2;Code 用户标识;duty 职位;salary 薪水;city 期望城市;education 学历;years 工作年限
 */
+(void)zhichangTrailWithAction:(NSString *)action code:(NSString *)code duty:(NSString *)duty salary:(NSString *)salary city:(NSString *)city education:(NSString *)education years:(NSString *)years address:(NSString *)address andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.7 登录接口
 *
 *  @param Action 类型：tjlist;Client 客户端ID;Username 手机号;Userpwd 密码
 */
+(void)loginWithaction:(NSString *)action Client:(NSString *)client Username:(NSString *)username Userpwd:(NSString *)userpwd withLat:(NSString *)lat withLong:(NSString *)Lng andDataBlock:(LoginModelBlock)block;

/**
 *  @brief  1.7.1 更新CID接口
 *
 *  @param
 */
+(void)refreshCidWithaction:(NSString *)action cid:(NSString *)cid code:(NSString *)code andDataBlock:(DictionaryBlock)block;


/**
 *  @brief  1.8 选项读取接口
 *
 *  @param type 类型：1 地区分类；2 部门分类；3 职位分类；4工作经验；5 学历分类；6 行业分类；7 企业人数； 8 薪资范围；9信息分类；10 公司性质;fid 父级code: 默认0(查询子选项时用);Code Type=1,3,6: 联动查询（关联子菜单typeid）Type=2: 企业标识  Type=9:用户标识  其他：0
 */
+(void)selectedTypeReadWithtype:(NSString *)type fid:(NSString *)fid code:(NSString *)code andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.9 设置新密码接口
 *
 *  @param Action 类型：editpwd;Username 手机号;Userpwd 密码
 */
+(void)setNewPasswordWithAction:(NSString *)action Username:(NSString *)username Userpwd:(NSString *)userpwd andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.9.1 修改密码接口
 *
 *  @param Action 类型：editpwd2;Userpwd 原密码;Userpwd2 新密码
 */
+(void)modifyPasswordWtihAction:(NSString *)action username:(NSString *)username userpwd:(NSString *)userpwd userpwd2:(NSString *)userpwd2 andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.10 联系人接口
 *
 *  @param Action 类型：friends;Code 用户标识;Qycode 企业标识
 */
+(void)contactPeopleWithaction:(NSString *)action Code:(NSString *)code Qycode:(NSString *)qycode andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.11 我的联系人详情接口
 *
 *  @param Action 类型：friends;code 我的标识;code1 好友标识
 */
+(void)mineContactPeopleWithAction:(NSString *)action code:(NSString *)code code1:(NSString *)code1 andDataBlock:(ContactPeopleDetaileModelBlock)block;

///**
// *  @brief  1.12 好友印象接口
// *
// *  @param Action 类型：impress;code1 好友标识
// */
//+(void)friendImpressionWithaction:(NSString *)action code1:(NSString *)code1 andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.12.0 推荐标签接口
 *
 *  @param Action 类型：tagall
 */
+(void)recommendLableWitnAction:(NSString *)action andDataBlock:(RecommenLableModelBlock)block;

/**
 *  @brief  1.12.1 给好友打标签接口
 *
 *  @param Action 类型：addtag;Code1 好友标识;Code 我的标识;Tags 标签
 */
+(void)giveFriendLableWtionAction:(NSString *)action code1:(NSString *)code1 code:(NSString *)code tags:(NSString *)tags andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.13 公告接口
 *
 *  @param Action 类型：notice;Code 企业标识
 */
+(void)commentWithAction:(NSString *)action Code:(NSString *)code andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.14 企业自检接口
 *
 *  @param Action 类型：qytest;Code 企业标识
 */
+(void)companyZiJianWithaction:(NSString *)action Code:(NSString *)code andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.15 提交考试接口
 *
 *  @param Action 类型：savetest;Code 考生标识;Testid 考试ID;Quests [id=>answer] 答题数组：试题QID→answer  如：array(’1’=>’A’,’2’=>’B’,’10’=>’E’);Suggest 其他建议

 */
+(void)submitTestAnswerWithaction:(NSString *)action Code:(NSString *)code TestId:(NSString *)testId Quests:(NSString *)quests suggest:(NSString *)suggest andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.16 发现（附近企业）接口
 *
 *  @param Action 类型：nearcomp;lng 经度;lat 纬度;Page 第几页;pnum 每页几个
 
 */
+(void)nearCompanyWithaction:(NSString *)action lng:(NSString *)lng lat:(NSString *)lat Page:(NSString *)page pnum:(NSString *)pnum andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.17 公司站首页接口
 *
 *  @param Action 类型：compindex;code 企业标识
 
 */
+(void)companyHomePageWithAction:(NSString *)action code:(NSString *)code ucode:(NSString *)ucode dates:(NSString *)dates andDataBlock:(CompanyDetailModelBlock)block;

/**
 *  @brief  1.18 搜索结果接口
 *
 *  @param Action 类型：soso;type 公司：comp   工作：duty;keyword 关键字;Industry 行业;Page 页数;Pnum 每页条数;Yqlh 优企排名  1 选中   0 不选;Near 附近     1 选中  0 不选;Lng 经度  选中near后有值;Lat 纬度  选中near后有值
 */
+(void)searchResultWithaction:(NSString *)action type:(NSString *)type keyword:(NSString *)keyword industry:(NSString *)industry page:(NSString *)page pnum:(NSString *)pnum yqlh:(NSString *)yqlh near:(NSString *)near lng:(NSString *)lng lat:(NSString *)lat andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.19 职位详情接口
 *
 *  @param Action 类型：dutys;dutyid 职位ID
 
 */
+(void)dutyDetailWithaction:(NSString *)action dutyId:(NSString *)dutyid andDataBlock:(ZPDetailModelBlock)block;

/**
 *  @brief  1.19.1 投递选择简历接口
 *
 *  @param Action 类型：selresum;code 用户标识
 
 */
+(void)resumeSelectedWithAction:(NSString *)action code:(NSString *)code andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.19.2 投递简历接口
 *
 *  @param Action 类型：appjob;Jid 招聘id;Rid 简历id
 
 */
+(void)deliverResumeWithAction:(NSString *)action jid:(NSString *)jid rid:(NSString *)rid andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.20 信息详情页接口
 *
 *  @param Action 类型：tuzan;infoid 信息ID
 
 */
+(void)infomationDetailWithAction:(NSString *)action infoid:(NSString *)infoid andDataBlock:(AllcommendModelBlock)block;

/**
 *  @brief  1.21 赞吐接口
 *
 *  @param Action 类型：updown;code 操作人标识;Msgid 信息ID;Opinion 意见： 赞 1   吐 2
 
 */
+(void)tuZanWitnAction:(NSString *)action code:(NSString *)code Msgid:(NSString *)msgid Opinion:(NSString *)opinion andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.22 发表评论接口
 *
 *  @param Action 类型：talks;code 操作人标识;Msgid 信息ID;Content 评论内容
 
 */
+(void)sendCommendWitnAction:(NSString *)action code:(NSString *)code Msgid:(NSString *)msgid Content:(NSString *)content andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.23 信息发布接口
 *
 *  @param Action 类型：publics;code 操作人标识;Type 信息类型(选项读取接口: typeclass.php);Qycode 在职企业;Content 文字内容;Pic 图片名（多个用“|”隔开，用图片接口传）;Position 位置（文字）;Isopen 公开度：1公开  2 私密  3 部分公开;Codes 部分公开的对象（联系人code,多个用“，”隔开）
 
 */
+(void)infomationSendWithAction:(NSString *)action code:(NSString *)code Type:(NSString *)type Qycode:(NSString *)qycode Content:(NSString *)content Pic:(NSString *)pic imgsize:(NSString *)imgsize Position:(NSString *)position Isopen:(NSString *)isopen Codes:(NSString *)codes andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.24 读取个人信息接口
 *
 *  @param Action 类型：baseinfo;code 操作人标识
 
 */
+(void)readPeopleInfomationWitnActon:(NSString *)action code:(NSString *)code andDataBlock:(ReadBaseInfoModelBlock)block;

/**
 *  @brief  1.25 修改个人信息接口
 *
 *  @param Action 类型：savebaseinfo;code 操作人标识;Mobile 手机号;Headpic 头像;Username 用户名;Sex 性别;Idcard 身份证
 
 */
+(void)modifyPeopleInfomationwithAction:(NSString *)action code:(NSString *)code mobile:(NSString *)mobile headpic:(NSString *)headpic username:(NSString *)username sex:(NSString *)sex idcard:(NSString *)idcard andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.26 收藏企业接口
 *
 *  @param Action 类型：mycomp;code 操作人标识
 
 */

+(void)collectionCompanyListWithaction:(NSString *)action code:(NSString *)code andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.26.1 添加收藏（好友）接口
 *
 *  @param Action 类型：addfriend;code 操作人标识;Code1 被收藏企业（好友）标识
 
 */
+(void)addCollectionOrfriendsWithAction:(NSString *)action code:(NSString *)code code1:(NSString *)code1 andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.26.2 删除收藏（好友）接口
 *
 *  @param Action 类型：delfriend;code 操作人标识;Code1 被收藏企业（好友）标识
 
 */
+(void)delCollectionOrfrienWithAction:(NSString *)action code:(NSString *)code code1:(NSString *)code1 andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.27 职场经历接口
 *
 *  @param Action 类型：mycaree;code 操作人标识
 
 */
+(void)zhichangExprienceWithaction:(NSString *)action code:(NSString *)code andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.28
 *
 *  @param Action 类型：mydyna;code 操作人标识;qycode 企业标识;dates 时间：格式  20160121
 
 */
+(void)zhichangDynationWithaction:(NSString *)action code:(NSString *)code qycode:(NSString *)yqcode page:(NSString *)page pnum:(NSString *)pnum date:(NSString *)date andDataBlock:(DynaModelBlock)block;

/**
 *  @brief  1.29 我的图片库接口
 *
 *  @param Action 类型：mypics;code 操作人标识
 
 */
+(void)minePictureWithaction:(NSString *)action code:(NSString *)code andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.30 创建相册接口
 *
 *  @param Action 类型：addpics;code 操作人标识;Name 相册名称
 
 */
+(void)createAlumWithaction:(NSString *)action code:(NSString *)code name:(NSString *)name andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.30.1 修改、删除相册接口
 *
 *  @param Action 类型：editpics;code 操作人标识;操作  1 删除  2 修改
 
 */
+(void)modifyAlumWitnAction:(NSString *)action code:(NSString *)code type:(NSString *)type pid:(NSString *)pid name:(NSString *)name andDataBlock:(DictionaryBlock)blcok;

/**
 *  @brief  1.30.2 修改、删除相册图片接口
 *
 *  @param Action 类型：delpics;code 操作人标识;Pid 动态信息id（多个用“|”隔开）；Pname  图片名称（多个用“|”隔开）
 
 */
+(void)modifyPicsWithAction:(NSString *)action code:(NSString *)code pid:(NSString *)pid pname:(NSString *)pname andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.31 相册内容接口
 *
 *  @param Action 类型：mypic;code 操作人标识;picsid 相册ID
 
 */
+(void)alumContentWithaction:(NSString *)action code:(NSString *)code picsid:(NSString *)picsid date:(NSString *)date andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.32 好友印象接口
 *
 *  @param Action 类型：mytag;code 操作人标识
 
 */
+(void)friendImpressionSecWithacton:(NSString *)action code:(NSString *)code andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.33 站内信列表接口
 *
 *  @param Action 类型：msglist;code 操作人标识
 
 */
+(void)zhanneiLetterListWithaction:(NSString *)action code:(NSString *)code andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.34 职位1/2级列表接口
 *
 *  @param Action 类型：zhiwei
 
 */
+(void)zhiweiListWithAction:(NSString *)action andDataBlock:(ComplexPositionModelBlock)block;

/**
 *  @brief  1.35 站内信详情接口
 *
 *  @param Action 类型：msgdetail;Id 信息ID
 
 */
+(void)zhanneiDetailWithaction:(NSString *)action idm:(NSString *)idm andDataBlock:(ZNLetterDetailModelBlock)block;

/**
 *  @brief  1.36 投递反馈列表接口
 *
 *  @param Action 类型：jobback;code  操作人标识
 */
+(void)feedBackListWithAction:(NSString *)action code:(NSString *)code andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.37 投递详情接口
 *
 *  @param Action 类型：jobdetail;id  投递id
 */
+(void)feedBackDetailWithActon:(NSString *)action idm:(NSString *)idm andDateBlcok:(PositionDeliverDetailModelBlock)block;

/**
 *  @brief  1.38 建议反馈接口
 *
 *  @param Action 类型：advice;Code  操作人标识;Content 反馈内容
 */
+(void)adviceFeedBackWithAction:(NSString *)action code:(NSString *)code content:(NSString *)content andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.39 关于我们接口
 *
 *  @param Action 类型：advice;Code  操作人标识;Content 反馈内容
 */
+(void)aboutUsWithAction:(NSString *)action andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.40 简历首页接口
 *
 *  @param Action 类型：resum;Code  个人标识
 */
+(void)resumeHomepageWithAction:(NSString *)action code:(NSString *)code andDataBlock:(ArrayBlock)block;

/**
 *  @brief  1.41 简历刷新、首选、删除接口
 *
 *  @param Action 类型：resumone;Code  个人标识;Type 操作：刷新 fresh  首选 istop   删除  del;Rid 简历id
 */
+(void)resumeIsdoWithAction:(NSString *)action code:(NSString *)code type:(NSString *)type rid:(NSString *)rid andDataBlcok:(DictionaryBlock)block;

/**
 *  @brief  1.42 编辑简历接口
 *
 *  @param Action 类型：editresum;Code  个人标识;Rid 简历id
 */
+(void)editResumeWithAction:(NSString *)action code:(NSString *)code rid:(NSString *)rid andDataBlock:(EditResumeModelBlock)block;

/**
 *  @brief  1.43 简历修改保存接口
 *
 *  @param Action 类型：editresum;Code  个人标识;Rid 简历id
 */
+(void)modifyRusumeWithAction:(NSString *)action model:(ResumeAddModel *)model andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.44 添加简历接口
 *
 *  @param Action 类型：editresum;Code  个人标识;Rid 简历id
 */
+(void)resumeAddWithAction:(NSString *)action model:(ResumeAddModel *)model andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.45 预览简历接口
 *
 *  @param Action 类型：readresum;Code  个人标识;Rid 简历id
 */
+(void)resumePreviewWithAction:(NSString *)action code:(NSString *)code rid:(NSString *)rid andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.46 实名认证接口
 *
 *  @param Action 类型：idcard;Realame  姓名;Idcard 身份证
 */
+(void)realNameCertificationWithAction:(NSString *)action code:(NSString *)code realName:(NSString *)realName idcard:(NSString *)idcard andDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.47 版本信息接口
 *
 *  @param Action 类型：idcard;Realame  姓名;Idcard 身份证
 */
+(void)getVersionandDataBlock:(DictionaryBlock)block;

/**
 *  @brief  1.48 消息推送设置
 *
 *  @param Action 类型：idcard;Realame  姓名;Idcard 身份证
 */

+(void)isAllowPushNoticationAction:(NSString *)action code:(NSString *)code isSend:(NSString *)issend andDataBlock:(DictionaryBlock)block;

//1.50公司招聘
+(void)CompanyZhaoPinAction:(NSString *)action code:(NSString *)code ucode:(NSString *)ucode withPage:(NSString *)page withPnum:(NSString *)pnum andDataBlock:(void (^) (id obj))block;

//1.51公司成长
+(void)CompanyChengZhangAction:(NSString *)action code:(NSString *)code ucode:(NSString *)ucode withPage:(NSString *)page withPnum:(NSString *)pnum withDates:(NSString *)date andDataBlock:(void (^) (id obj))block;
@end

